package com.yunji.aggregate.model.dto.base;

import com.yunji.common.base.PageDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import java.io.Serializable;

/**
 * @Project: yunji-coffee
 * @Package com.yunji.user.params
 * @FileName StaffParam.java
 * @Copyright Copyright © 2024 云集互联. All Rights Reserved
 * Company		com
 * @version 1.0
 * @since JDK 1.8.0_202
 * @CreateTime 2024-04-07 16:09:59
 * @Description 员工查询参数
 * @Modification Author                History Time			Version				Description
 * ----------------------------------------------------------------------------
 * HuaAo			2024-04-07 16:09:59		1.0					1.0 Version
 */
@Builder
@Data
@ApiModel(value = "员工查询参数", description = "员工查询参数")
public class StaffParam extends PageDTO implements Serializable {
    private static final long serialVersionUID = -8329002936434716872L;

    @ApiModelProperty("员工ID")
    private Long id;

    @ApiModelProperty("父属ID")
    private Long parentId;

    @ApiModelProperty("所属ID")
    private Long belongId;

    @ApiModelProperty("代理商ID")
    private Long agentId;

    @ApiModelProperty("代理商名称")
    @Length(message = "代理商名称不能超过{max}个字符", max = 15)
    private String agentName;

    @ApiModelProperty("网点ID")
    private Long managerId;

    @ApiModelProperty("网点名称")
    private String managerName;

    @ApiModelProperty("员工ID")
    private Long staffId;

    @ApiModelProperty("站点ID")
    private Long siteId;

    @ApiModelProperty("站点名称")
    @Length(message = "网点名称不能超过{max}个字符", max = 15)
    private String siteName;

    @ApiModelProperty("员工名称")
    @Length(message = "员工姓名不能超过{max}个字符", max = 6)
    private String staffName;

    @ApiModelProperty("员工电话")
    @Length(message = "员工电话不能超过{max}个字符", max = 11)
    private String staffTel;

    @ApiModelProperty("提点方式")
    private Integer scaleType;

    @ApiModelProperty("提点方式")
    private Integer status;

    @ApiModelProperty("最小年龄")
    private Integer minAge;

    @ApiModelProperty("最大年龄")
    private Integer maxAge;

    @ApiModelProperty("搜索字段")
    private String searchFiled;

    @ApiModelProperty("点位ID")
    private Long locationId;

}
